Multimedia is a term used in connection with computer systems to refer to software that processes, i.e., creates, edits, displays, synchronizes, etc., one or more files of time-based data. A multimedia computer system is designed to present various materials in various combinations of text, graphics, video, image, animation, audio, etc. Multimedia systems commonly comprise a combination of hardware and software including a personal computer, a CD-ROM drive, software editors, etc. The data for multimedia presentations are generally stored on hardware memory devices, such as a magnetic disc drive, a ROM compact disk player, video tape device, etc.
Application developers utilizing such a multimedia system may create programs that allow end users to view a multimedia presentation and manipulate various controls.
One of the most difficult problems that face creators/developers of multimedia titles is synchronization of time and events. For example, a developer must be able to synchronize audio with a video presentation and provide images that appear and disappear over time. In many complex real world examples it is desirable for two or more multimedia items to be synchronized based on one or more of the following: an event; a relative time relationship (i.e., A Before B, A After B, A coincident with B); and an absolute time.
One product attempting to deal with time synchronization is DIRECTOR from Macromedia which specifies time on a frame based metaphor. A Score is used to specify when things occur in a movie (or title). The Score is a sequence of frames that hold cells of an animation and the indication to start playing audio or video. Things are specified linearly in Director. Frames are sequenced in order unless software code is written to manually go back to a previous frame. Frames show sequentially one after the other. To create an animation, for example, a developer must manually associate each cell in the animation with a frame in the Score. There is no convenient way to cause things to occur in the relative manner. If two animations are to co-occur, corresponding frames must be manually specified on an individual basis. A Time tool can be used to specify the playing of a video; however, nothing else can be processed (i.e., animation, other videos, etc.) while the video is playing. There is no point and click mechanism for wrap; code must be written to cause a wrap.
Another product, PREMIER from ADOBE, is a video editing product. It has a facility called the Construction Window (CW) where clips (i.e., video, scan images, QuickTime, movies, audio) are manipulated to create movies. The CW has channels, a timeline, and a time unit selector to adjust the scale of the ticks on the timeline. Pieces of video and images are put in channels and manually (i.e., drag) to a line with an absolute time and with other pieces of media. There is no notion of relative time or event time and no alignment helper co-tools. The notion of wrap does not exist for the creation of a movie.
Finally, ICONAUTHOR (IA) is a multimedia authoring tool which allows creation of applications that include time-based media, logic, database, etc. IA uses a flowchart metaphor to specify an application. Icons representing the playing of media, database access, comparisons, assignment, etc. are taken from a palette and connected into a flowchart. Processing in the application then follows the hierarchical structure defined in the flowchart. There is no editor to synchronize processing visually. Synchronization is done by checking logic and by corresponding logic that responds to events.
Thus, there is a need for a method that simply and visually provides synchronization of multimedia parts in relation to event time, relative time, and absolute time using spacer tools.